package marketplace.ejb.interfaces;

import java.util.ArrayList;
import java.util.List;

import javax.ejb.Remote;

import marketplace.jpa.datas.DataContenidoDigital;
import marketplace.jpa.datas.DataReclamo;
import marketplace.jpa.datas.DataValoracion;
import marketplace.jpa.datas.DataVenta;

@Remote
public interface IVentaEJB {
	public abstract boolean ingresoValoracion(DataValoracion dv) throws Exception;
	public abstract void modificarValoracion(DataValoracion dv) throws Exception;
	public abstract void eliminarValoracion(int idv) throws Exception;
	
	public abstract boolean altaReclamo(DataReclamo r) throws Exception;
	public abstract List<DataReclamo> getReclamosVenta(int idVenta) throws Exception;
	public abstract List<DataReclamo> getReclamos() throws Exception;
	public abstract void modificarReclamo(DataReclamo r) throws Exception;
	public abstract void eliminarReclamo(int idr) throws Exception;
	public abstract DataReclamo buscarReclamo(int idr) throws Exception;
	public abstract DataVenta buscarVenta(int idv) throws Exception;
	
	public abstract boolean ingresarVenta(DataVenta dv) throws Exception;
	public abstract List<DataVenta> getVentasCliente(String mailCliente) throws Exception;
	public abstract List<DataVenta> obtenerVentas() throws Exception;
	public abstract ArrayList<DataVenta> obtenerInfoContenidoPorVersion(int idContenido) throws Exception ;
	public abstract double obtenerValoracionTotalVersion(int idVersion) throws Exception;
	
	public abstract String getDescargasContenidoX() throws Exception;
	public abstract String getDescargasContenidoY( int idCont) throws Exception;
	public abstract List<DataContenidoDigital> getTopPagas() throws Exception;
	
}
